Defining a zone to perform an action in a dual-screen tablet

ABSTRACT

In some implementations a computing device may comprise a first and a second display device. A zone may be defined on the first display device. The computing device may receive selection input selecting an object and receive directional input to move the object on the first display device. After determining that a location of the object is within a predetermined distance from (or within) a boundary of the zone, a message indicating an action associated with the zone may be displayed. After determining that at least a portion of the object is within the boundary of the zone, the action may be performed. The action may include moving the object to the second display device, opening (e.g., maximizing) a window associated with the object to span both the first and second display device, or storing the object in the zone for subsequent retrieval on the second display device.

BACKGROUND OF THE INVENTION Field of the Invention

This invention relates generally to dual-display devices and, moreparticularly, to defining and using zones on portions of either or bothdisplays of a dual-display device.

Description of the Related Art

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores,and/or communicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Because technology and information handling needs andrequirements vary between different users or applications, informationhandling systems may also vary regarding what information is handled,how the information is handled, how much information is processed,stored, or communicated, and how quickly and efficiently the informationmay be processed, stored, or communicated. The variations in informationhandling systems allow for information handling systems to be general orconfigured for a specific user or specific use such as financialtransaction processing, airline reservations, enterprise data storage,or global communications. In addition, information handling systems mayinclude a variety of hardware and software components that may beconfigured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

Traditionally, operating systems have assumed the presence of a singledisplay device. Over time, operating systems have been updated toprovide rudimentary support for an additional display device. However,the operating system merely treats both devices as a single device andignores the fact that each display device has a bezel and that there maybe a gap between the two display devices. Such problems may be moreexacerbated in a small form factor computing device, such as a phone ortablet, that has two built-in display devices.

SUMMARY OF THE INVENTION

This Summary provides a simplified form of concepts that are furtherdescribed below in the Detailed Description. This Summary is notintended to identify key or essential features and should therefore notbe used for determining or limiting the scope of the claimed subjectmatter.

In some implementations a computing device may comprise a first and asecond display device. A zone may be defined on the first displaydevice. The computing device may receive selection input selecting anobject and receive directional input to move the object on the firstdisplay device. After determining that a location of the object iswithin a predetermined distance from (or within) a boundary of the zone,a message indicating an action associated with the zone may bedisplayed. After determining that at least a portion of the object iswithin the boundary of the zone, the action may be performed. The actionmay include moving the object to the second display device, opening(e.g., maximizing) a window associated with the object to span both thefirst and second display device, or storing the object in the zone forsubsequent retrieval on the second display device.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of the present disclosure may be obtainedby reference to the following Detailed Description when taken inconjunction with the accompanying Drawings. In the FIG.s, the left-mostdigit(s) of a reference number identifies the FIG. in which thereference number first appears. The same reference numbers in differentFIG.s indicate similar or identical items.

FIG. 1 is a block diagram of an architecture of a computing device thatincludes a crossbar switch according to some embodiments.

FIG. 2 is a block diagram illustrating different orientations of adual-screen device according to some embodiments.

FIG. 3 is a block diagram illustrating modes of a dual-screen device ina vertical orientation according to some embodiments.

FIG. 4 is a block diagram illustrating modes of a dual-screen device ina horizontal orientation according to some embodiments.

FIG. 5 is a block diagram illustrating a zone that moves an object fromone display to another display according to some embodiments.

FIG. 6 is a block diagram illustrating displaying a message indicatingan action that will be performed when a portion of an object enters azone according to some embodiments.

FIG. 7 is a block diagram illustrating a zone that opens an objectacross two display devices according to some embodiments.

FIG. 8 is a block diagram illustrating a zone that displays a messageindicating an action associated with the zone according to someembodiments.

FIG. 9 is a block diagram illustrating a zone to hold objects that canbe removed and placed on either a first display device or a seconddisplay device according to some embodiments.

FIG. 10 is a block diagram illustrating creating multiple zones for adual-display device according to some embodiments.

FIG. 11 is a flowchart of a process that includes determining that atleast a portion of an object is within the zone according to someembodiments.

FIG. 12 is a flowchart of a process that includes determining whether aportion of an object is within a first zone or within a second zoneaccording to some embodiments.

FIG. 13 a flowchart of process that includes displaying a messageindicating an action associated with a zone according to someembodiments.

FIG. 14 is a block diagram illustrating a bezel of a display device thatincludes a capacitive touch area according to some embodiments.

FIG. 15 illustrates an example configuration of a computing device thatcan be used to implement the systems and techniques described herein.

DETAILED DESCRIPTION

For purposes of this disclosure, an information handling system mayinclude any instrumentality or aggregate of instrumentalities operableto compute, calculate, determine, classify, process, transmit, receive,retrieve, originate, switch, store, display, communicate, manifest,detect, record, reproduce, handle, or utilize any form of information,intelligence, or data for business, scientific, control, or otherpurposes. For example, an information handling system may be a personalcomputer (e.g., desktop or laptop), tablet computer, mobile device(e.g., personal digital assistant (PDA) or smart phone), server (e.g.,blade server or rack server), a network storage device, or any othersuitable device and may vary in size, shape, performance, functionality,and price. The information handling system may include random accessmemory (RAM), one or more processing resources such as a centralprocessing unit (CPU) or hardware or software control logic, ROM, and/orother types of nonvolatile memory. Additional components of theinformation handling system may include one or more disk drives, one ormore network ports for communicating with external devices as well asvarious input and output (I/O) devices, such as a keyboard, a mouse,touchscreen and/or video display. The information handling system mayalso include one or more buses operable to transmit communicationsbetween the various hardware components.

The systems and techniques described herein may define one or more zoneson a computing device with at least two display devices, with each zonehaving an associated action. For example, a computing device mayinclude: a first display device, a second display device, one or moreprocessors, and one or more non-transitory computer readable mediastoring instructions executable by the one or more processors to performvarious operations. The operations may include defining a first zone onthe first display device. The first zone may be defined on the firstdisplay device by creating the zone with a pre-specified length and apre-specified width and positioning the zone at a pre-specified locationon the first display device. The computing device may receive selectioninput selecting an object being displayed on the first display deviceand receive directional input to move the object on the first displaydevice. The object may include at least one of a file, an application,or a folder. After determining that a location of the object is within apredetermined distance from a boundary of the zone, the computing devicemay display (one either the first display device or the second displaydevice), for a predetermined period of time, a message indicating anaction associated with the zone. After the predetermined period of timehas elapsed, the computing device may determine whether at least aportion of the object is within the boundary of the zone. If thecomputing device determines that at least a portion of the object iswithin the boundary of the zone, the computing device may perform theaction associated with the zone to (or using) the object. For example,the action associated with the zone may include displaying the object onthe second display device and stopping displaying the object on thefirst display device. As another example, the action associated with thezone may include opening (e.g., maximizing) a window associated with theobject to span both the first display device and the second displaydevice. As yet another example, the action associated with the zone mayinclude displaying a first portion of the object within the first zoneon the first display device and displaying a second portion of theobject within a second zone on the second display device. In thisexample, the computing device may receive second selection inputselecting the second portion of the object within the second zone on thesecond display device, receive second directional input to move theobject, causing the computing device to display the object outside thesecond zone, on the second display device.

FIG. 1 is a block diagram of an architecture 100 of a computing devicethat includes a crossbar switch according to some embodiments. Thecomputing device 102 includes a graphics processing unit 104. Thegraphics processing unit 104 may be an independent device (e.g.,integrated circuit) or may be part of a central processing unit 106. TheGPU 104 may provide three video data outputs (e.g., three pipes). Forexample, a third video data output of the GPU 104 may be sent to a port108. The port 108 may be used to connect an external display device tothe computing device 102. In some implementations, the third video dataoutput of the GPU 104 may be sent to a third display device of thecomputing device 102 (e.g., instead of to the port 108). The GPU 104 mayprovide a second video data output from an embedded DisplayPort (eDP)port 110. The GPU 104 may provide a third video data output from aDisplayPort (DP) port 112. First content 140(1) from the eDP 110 andsecond content 140(2) from the DP 112 may be sent to a crossbar switch114. The crossbar switch 114 may be capable of routing the content 140from the eDP 110 and the output from the DP 112 to either (or both)output 116(1) or output 116(2). The outputs 116 from the crossbar switch114 may be sent to a DP-to-DSI converter 118. The DP-to-DSI converter118 may convert a DisplayPort compliant signal into a display serialinterface (DSI) compliant signal. For example, the DP-to-DSI 118(1) mayprovide two DSI lanes DSI0 120(1) and DSI1 122(1) to an internal displaydevice 124(1). The internal display device 124(1) is a display devicethat is typically (e.g., in a computing device with a single display)connected to the eDP port 110. The DP-to-DSI 118(2) may receive theoutput 116(2) from the crossbar switch 114 and provide two DSI lanesDSI0 120(2) and DSI1 122(2) to the additional display device 124(2).

A controller 126 (e.g., an embedded controller) may receive data 136(1)to data 136(N) (where N>0) from one or more of (i) a device driver 130(e.g., associated with GPU 104), (ii) an operating system 132 of thecomputing device 102, (iii) one or more sensors 134 associated with thecomputing device 102, or (iv) user input 142 provided by a user of thecomputing device 102. For example, the sensors 134 may include anaccelerometer, a gyroscope, a magnetometer or a magnetic compass, aproximity sensor, a camera, another type of sensor, or any combinationthereof. A user of the computing device 102 may provide the user input142. In some cases, the user input 142 may override the data from one ormore of the device driver 130, the operating system 132, or the sensors134. For example, the controller 126 may use the data from one or moreof the device driver 130, the operating system 132, or the sensors 134to determine a particular routing and instruct the crossbar switch 114to configure a particular routing. In some cases, the user may overridethe particular routing by providing the user input 142.

The computing device 102 may include a memory 138. The memory 138 may beused to store content, such as the first content 140(1) and the secondcontent 140(2). At least one of the first content 140(1) or the secondcontent 140(2) may include unprotected content or protected content(e.g., content protected using a DRM scheme).

The controller 126 may, based on the data 136, provide an instruction128 to the crossbar switch 114 to select a routing that routes one ormore of the first content 140(1) (from the eDP port 110) or the secondcontent 140(2) (from the DP port 112) to one or more of the outputs116(1) or 116(2). For example, the crossbar switch 114 may route thefirst content 140(1) from the eDP port 110 to the output 116(1) fordisplay on the internal display device 124(1) and may route the secondcontent 140(2) from the DP port 112 to the output 116(2) for display onthe additional display device 124(2). As a second example, the crossbarswitch 114 may route the first content 140(1) from the eDP port 110 tothe output 116(2) for display on the additional display device 124(2)and may route the second content 140(2) from the DP port 112 to theoutput 116(1) for display on the internal display device 124(2). As athird example, the crossbar switch 114 may route the first content140(1) from the eDP port 110 to both the output 116(1) and 116(2) fordisplay on the internal display device 124(1) and the additional displaydevice 124(2). As a fourth example, the crossbar switch 114 may routethe second content 140(2) from the DP port 112 to both the output 116(1)and the output 116(2) for display on the internal display device 124(1)and the additional display device 124(2).

The controller 126 may determine which routing of the crossbar switch114 to select based on (1) an orientation of the computing device 102,(2) a display mode 144 of the operating system 132, and (3) whetherDRM-protected content is being displayed. The orientation of thecomputing device 102 may be determined based on which of the displaydevices 124(1) or 124(2) is “up” (when the computing device 102 is in ahorizontal orientation) or which of the display devices 124(1) or 124(2)is “left” (when the computing device 102 is in a vertical orientation).For example, the operating system 132, such as Microsoft® Windows®, mayprovide three display modes 144: (a) extended desktop mode where thedisplay devices 124(1) and 124(2) behave as if they were a singledisplay device, (b) clone mode where each of the display devices 124(1)and 124(2) display the same content, or (c) single display mode, e.g.,one of the display devices 124(1) or 124(2) is off and therefore notdisplaying any content. For example, single display mode may be usedwhen the computing device is in a tablet orientation to turn off aparticular display device (of the display devices 124(1) and 124(2))that is not visible to (or facing) the user.

The operating system (OS) 132 may allow DRM protected content to bedisplayed on a single display device (e.g., either 124(1) or 124(2)) andprevent DRM protected content from being displayed across both of thedisplays in extended desktop mode (because in extended desktop mode, oneof the display devices 124(1) or 124(2) is to be driven by output fromthe DP port 112). Therefore, DRM protected content may be displayed ononly one of the display devices 124(1) or 124(2) in the extended desktopmode. Thus, in all three of the modes 144 (e.g., extended desktop mode,clone mode, or single display mode), the DRM protected content may bedisplayed on either the internal display device 124(1) or the additionaldisplay device 124(2) depending on which of the display devices 124(1)and 124(2) is visible to the user (e.g., based on the orientation of thecomputing device 102).

Typically, when viewing DRM protected content such as a movie ortelevision show, the computing device may be in a horizontal (e.g.,landscape) orientation. In any of the three display modes, if theinternal display device 124(1) is “up” in the horizontal orientation,then the first content 140(1) from the eDP port 110 may be sent to theoutput 116(1) for display on the internal display device 124(1). In anyof the three display modes, if the additional display device 124(2) is“up” in the horizontal orientation, then the first content 140(1) fromthe eDP port 110 may be sent to the output 116(2) for display on theadditional display device 124(2). In the horizontal mode, in theextended desktop mode, other applications or other content may bedisplayed by the display device that is “down”. In the horizontal mode,in the clone mode, the DRM protected content may be displayed on boththe display device that is “up” and the display device that is “down”(e.g., the content is duplicated on each of the two display devices). Inthe horizontal mode, in the single display mode, the DRM protectedcontent may be displayed on the display device that is “up” while nocontent may be displayed on the display device that is “down”.

In a tablet orientation (see FIGS. 3 and 4 for more details), in whichthe display device 124(1) is facing in an opposite direction from thedisplay device 124(2), the controller 126 may determine that aparticular display device of the display devices 124(1) or 124(2) isvisible to the user based on the data 136 (including data from the userinput 142). The controller 126 may send the instruction 128 to thecrossbar switch 114 to select a routing that sends the first content140(1) from the eDP port 110 to the particular display device that isvisible to the user. By routing the output of the eDP port 110 towhichever of the display devices 124(1) or 124(2) is visible to theuser, the display device is able to re-orient the content when thecomputing device 102 is rotated. In addition, DRM protected content maybe displayed in FHD by sending the output of the eDP port 110,regardless of which of the display devices 124(1) or 124(2) is “up”. Inthe tablet orientation, the output of the eDP port 110 may be sent tothe internal display device 124(1) when the internal display device124(1) is visible to the user and may be sent to the additional displaydevice 124(2) when the additional display device 124(2) is visible tothe user. The display device that is not visible to the user may either(i) be off (e.g., in the single display mode) or (ii) display the samecontent being displayed on the other display device (e.g., clone mode).

In a clamshell mode (see FIG. 4 for more details) in which one of thedisplay devices 124 is at the top and the other is at the bottom, thecontroller 126 may identify which of the display devices 124 is at thetop based on the data 136 received from one or more of the device driver130, the OS 132, the sensors 134, and the user input 142. In theclamshell mode, if the operating system 132 is in the extended displaymode, then if the internal display device 124(1) is on top, the outputof the eDP port 110 is routed to the internal display device 124(1) andthe output of the DP port 112 is routed to the additional display device124(2). If the additional display device 124(2) is on top, the output ofthe eDP port 110 is routed to the additional display device 124(2) andthe output of the DP port 112 is routed to the internal display device124(1). In the clamshell mode, if the operating system 132 is in theclone mode, then the output of the eDP port 110 is routed to both theinternal display device 124(1) and to the additional display device124(2). As previously discussed, DRM protected content is displayed onthe display device(s) to which the output of the eDP port 110 is routed(e.g., to the display device that is determined to be at the top insingle display mode or to both display devices in clone mode). DRMprotected content may not be displayed in FHD resolution in extendeddisplay mode because the output of the DP port 112 is encrypted and boththe internal display device 124(1) and the additional display device124(2) lack the circuitry to decrypt and display content in FHDresolution. If DRM protected content is played back while the OS 132 isin the extended desktop mode, the DRM protected content may be shown instandard definition (SD) resolution or may not be displayed at all,depending on the type of content and the DRM constraints.

In the extended desktop mode, DRM protected content may be displayed byrouting the content from the eDP port 110 to one of the display devices124(1) or 124(2). For example, playing a movie in “full screen” expandsthe movie to fill the particular display device that is connected to theeDP port 110. The OS 132 may, based on the DRM protection, prevent themovie from being displayed stretched across both the display devices124(1) and 124(2). Clone mode does not violate the DRM protectionbecause the first content 140(1) is sent from the eDP port 110 andduplicated on both of the display devices 124(1) and 124(2). In theextended desktop mode, unprotected content may be displayed stretchedacross both of the display devices 124(1) and 124(2) by sending half ofthe unprotected content from the eDP port 110 and a remaining half ofthe unprotected content from the DP port 112.

The GPU 104 may support three logical pipes (e.g., three video outputs).An advantage of using the crossbar switch 114 to drive both of thedisplay devices 124(1) and 124(2) is that a single output port (e.g.,the eDP port 110 or the DP port 112) of the GPU 104 is used. Forexample, by using a single logical pipe (e.g., a single output port) todrive both of the display devices 124(1) and 124(2) in clone mode forprotected/unprotected content or in extended desktop mode forunprotected content, the two remaining logical pipes may be used todrive one or two external displays (e.g., via the port 108). In clonemode, if the crossbar switch 114 was not present, then the GPU 104 woulduse two logical pipes (e.g., the eDP port 110 and the DP port 112) tosend the content to both the display devices 124(1) and 124(2), therebyleaving a single pipe to drive an external display (e.g., via the port108). In some implementations, the computing device 102 may include athird display device, with each of the three logical pipes of the GPU104 capable of driving each of the three display devices.

Table 1 summarizes the various possible routings and which port(s) areused based on (i) whether DRM content is being played back and (ii) thedisplay mode 144 of the operating system 132 has been selected. If thecontent does not have DRM protection in either single display mode orclone mode, then either of the eDP port 110 or the DP port 112 may beused. Though Table 1 does not include an entry, in some implementations,unprotected content may be routed from the DP port 112 to either of thedisplay devices 124(1) or 124(2) in single display mode or to both ofthe display devices 124(1) and 124(2) in clone mode. Because there is noadvantage to using the DP port 112 for unprotected content in singledisplay mode or clone mode and because the normal routing uses theoutput of the eDP port 110, if content does not have DRM protection inclone mode (or single display mode), then the output of the eDP port 110is routed both (or one) of the display devices 124(1) and 124(2).

As the examples in Table 1 illustrate, in the extended desktop mode, DRMprotected content is output in an unencrypted format from the eDP port110 and sent to either the internal display device 124(1) or theadditional display device 124(2) while unprotected content is outputfrom the DP port 112 and sent to the other display device. For example,if the output of the eDP port 110 is sent to the internal display device124(1) then the output of the DP port 112 is sent to the additionaldisplay device 124(2). If the output of the eDP port 110 is sent to theadditional display device 124(2) then the output of the eDP port 110 issent to the internal display device 124(1).

TABLE 1 DRM OS Display Mode Routine eDP Port Output DP Port Output YesSingle Display eDP Only Either Internal or Not Used Mode AdditionalDisplay Yes Clone Mode eDP Only Both Displays Not Used Yes ExtendedDesktop Normal or Swap One of the two The other of the two Mode displaysdisplays No Single Display eDP Only Either Internal or Not Used ModeAdditional Display No Clone Mode eDP Only or DP Both Display DevicesBoth Display Devices Only or Not Used or Not Used No Extended DesktopNormal or Swap Internal or Additional Internal or Additional ModeDisplay Device Display Device

Thus, the controller 126 may receive the data 136(1) to 136(N) from oneor more of the device driver 130, the operating system 132, or thesensors 134. The controller 126 may determine an orientation of thecomputing device 102 based on the data 136. Based on the orientation ofthe computing device 102, the controller 126 may rotate the contentbeing displayed between approximately 0 degrees and approximately 360degrees. For example, in some cases, the content may be rotated to theright (clockwise) or to the left (counter-clockwise) in 90 degreeincrements (e.g., 90 degrees, 180 degrees, or 270 degrees). Based on (a)the display mode 144 (e.g., single mode, clone mode, or extended desktopmode) of the OS 132, and (b) whether the content being displayed isprotected using DRM, the controller 126 may select a routing and sendthe instruction 128 to the crossbar switch 114 selecting the routing.The instruction 128 may cause the crossbar switch 114 to be configuredto perform the selected routing. In some cases, a user may provide theuser input 142 to modify (or override) the orientation determined by thecontroller 126, the routing determined by the controller 126, or both.If the orientation of the computing device 102 changes while the contentis being displayed, the controller 126 may receive new data 136,determine a new orientation, determine a new routing, and automaticallyinstruct the crossbar switch 114 to configure a new routing. Based onthe new orientation of the computing device 102, the controller 126 mayrotate the content being displayed between approximately 0 degrees andapproximately 360 degrees. For example, in some cases, the content maybe rotated to the right (clockwise) or to the left (counter-clockwise)in 90 degree increments (e.g., 90 degrees, 180 degrees, or 270 degrees).In some cases, the user input 142 may cause the controller 126 to “lock”a particular routing configuration, a particular orientation, or both,such that the controller 126 ignores any additional data received fromone or more of the device driver 130, the OS 132, or the sensors 134until the user input 142 causes the controller 126 to remove the “lock”.

FIG. 2 is a block diagram 200 illustrating different orientations of adual-screen device (e.g., the computing device 102 of FIG. 1) accordingto some embodiments. As previously noted in FIG. 1, the computing device102 may include at least two display devices, the internal displaydevice 124(1) and the additional display device 124(2). The computingdevice 102 may be displayed in a vertical (e.g., portrait) orientation202 or a horizontal (e.g., landscape) orientation 204. For example, inthe vertical orientation 202, the internal display device 124(1) may beon one side (e.g., the left side or the right side), the additionaldisplay device 124(2) may be on another side (e.g., the right side orthe left side), and a hinge 206 may join the internal display device124(1) to the additional display device 124(2). Additional examples ofthe vertical orientation 202 are illustrated in FIG. 3. In thehorizontal orientation 204, the internal display device 124(1) may belocated at the top (or the bottom) of the computing device 102 with thehinge 206 in the middle and the additional display device 124(2) at thebottom (or the top) of the computing device. Additional examples of thehorizontal orientation 204 are illustrated in FIG. 4.

FIG. 3 is a block diagram 300 illustrating modes of a dual-screen devicein a vertical orientation according to some embodiments. Examples of thevertical orientation 202 may include a book orientation 302 or avertical tablet orientation 304. For example, in a first bookorientation 302(1), the internal display device 124(1) may be on theleft and the additional display device 124(2) may be on the right.Alternately, in a second book orientation 302(2), the additional displaydevice 124(2) may be on the left and the internal display device 124(1)may be on the right.

In the vertical tablet orientation 304, the internal display device124(1) may be on the left and the additional display device 124(2) maybe on the right. In a first vertical tablet orientation 304(1), theinternal display device 124(1) may be facing a user and the additionaldisplay device 124(2) may be rotated approximately 360 degrees to faceaway from the user. In a second vertical tablet orientation 304(2), theadditional display device 124(2) may be facing the user while theinternal display device 124(1) may rotated approximately 360 degrees toface away from the user.

FIG. 4 is a block diagram 400 illustrating modes of a dual-screen devicein a horizontal orientation according to some embodiments. Examples ofthe horizontal orientation 204 may include a tent orientation 402, apresentation orientation 404, a horizontal tablet orientation 406, and aclamshell orientation 408.

In 402(1), the internal display device 124(1) may be at the top facingthe user while the additional display device 124(2) may be at the bottomfacing away from the user. In 402(2), the additional display device124(2) may be at the top facing the user and the internal display device124(1) may be at the bottom facing away from the user.

In 404(1), the internal display device 124(1) may be at the top facingthe user and the additional display device 124(2) may be at the bottomfacing down. In 404(2) the additional display device 124(2) may be atthe top facing the user and the internal display device 124(1) may be atthe bottom facing down.

In 406(1), the internal display device 124(1) may be at the top facingthe user and the additional display device 124(2) may be at the bottomfacing down (e.g., away from the user). In 406(2), the additionaldisplay device 124(2) may be at the top facing the user and the internaldisplay device 124(1) may be at the bottom facing down (e.g., away fromthe user).

In 408(1), the internal display device 124(1) may be at the top facingthe user and the additional display device 124(2) may be at the bottomfacing the user (e.g., in a position where traditionally, a keyboard islocated in a laptop). In 408(1), in some cases, a QWERTY-based keyboardmay be displayed on the additional display device 124(2) and used toreceive keyboard input. In 408(2), the additional display device 124(2)may be at the top facing the user and the internal display device 124(1)may be at the bottom facing the user (e.g., in a position wheretraditionally, a keyboard is located in a laptop). In 408(2), in somecases, a QWERTY-based keyboard may be displayed on the internal displaydevice 124(1) and used to receive keyboard input.

FIG. 5 is a block diagram 500 illustrating a zone that moves an objectfrom one display to another display according to some embodiments. Anobject may be an application (e.g., Microsoft® Word®, PowerPoint®,Excel®, Visio®, and the like), a file that is associated with (e.g.,that can be opened by) an application (a document associated with Word®,a spreadsheet associated with Excel®, a presentation file associatedwith PowerPoint®, and the like), a folder, or another type of file typethat can be used in a computing device.

In FIG. 5, as an example, the objects include a task view window 502 andmultiple applications 504(1) to 504(N) (where N>0) displayed within thetask view window 502. A zone, such as the zone 506, may be defined onone or both of the display devices 124. The zone 506 may be created bythe operating system 132, by one of the applications 504, or anycombination thereof. The zone 506 may have a particular length, aparticular width, and a particular location (e.g., located on a side ofthe display devices 124 that is nearest to the hinge 206). The length,width, and location of the zone 506 may be specified by the operatingsystem 132 of FIG. 1, by one of the applications 504, or by a user ofthe computing device 102. For example, the operating system 132 mayspecify a default length, width, and location. A currently selected orcurrently active application may specify the length, width, and locationof the zone 506 that overrides the operating system defaults. A userprofile or preferences folder may include a user specified length,width, and location of the zone 506 that overrides anything specified bythe operating system 132 or the applications 504.

The zone 506 may be used to transfer an object (e.g., one of theapplications 504) from one of the display devices 124 to another. Forexample, in the top half of FIG. 5, when a user drags an object, such asthe application 504(N), near (e.g., within a predetermined distancefrom) or partially over the zone 506, a message 508 may be displayedindicating the action to be performed (“move from current display deviceto adjacent display device”) by the zone 506. If a user places at leasta portion of the object (e.g., application 504(N)) over the zone 506, inresponse, the zone 506 may automatically display the object on theadjacent display device, as illustrated in the bottom half of FIG. 5.Thus, the action associated with the zone 506 may be to move an object(e.g., the application 504(N)) from one display device (e.g., thedisplay device 124(2)) and display the object on an adjacent displaydevice (e.g., the display device 124(1)) of the computing device 102.

In some cases, the zone 506 may automatically display the object on theadjacent display device after determining that at least a portion of theobject is over the zone 506, while the user is still holding (e.g.,applying pressure to) the object. In other cases, the zone 506 mayautomatically display the object on the adjacent display device afterdetermining that at least a portion of the object is over the zone 506,and after the user has released the object onto the zone 506 (e.g., theuser is no longer applying pressure to the object on the touch screendisplay device).

The zone 506 may display the message 508 to inform the user of theaction (e.g., “move to other screen”) to be performed. After the message508 has been displayed for a predetermined amount of time (e.g., Mmilliseconds, where M>0), the zone 506 may determine whether at least aportion of the object is over the zone 506. Thus, the user may be givena pre-determined amount of time after the message 508 is displayed todrag the object away from the zone before the action is performed. Afterthe message 508 has been displayed for the predetermined amount of time,if at least a portion of the object is over the zone 506, the action(e.g., moving and displaying the object on an adjacent display device)may be performed. After the message 508 has been displayed for thepredetermined amount of time, if no portion of the object is over thezone 506, then the action is not performed.

The message 508 may include a prompt informing the user of the actionthat will be performed and asking the user to confirm (e.g., “move toother screen—please confirm”). Thus, the user may be asked to confirmwhether to perform the action associated with the zone 506. If the userconfirms, then the action (e.g., moving and displaying the object on anadjacent display device) may be performed. If the user does not confirm,then the action is not performed.

While FIGS. 5 and 6 illustrate the action of moving an object from afirst display device to a second display device (or vice-versa), itshould be understood that other actions may be performed. For example,default actions may be specified by the operating system and overriddenby a particular application or by user preferences. To illustrate, auser may specify that when an object, such as file, that is beingdisplayed on a first display device is moved on to the zone 506, theaction causes the file to be launched using the associated applicationon the second display device. For example, the user may drag a Word®document displayed on the display device 124(2) on to the zone 506,causing an action in which the Word® application opens the document onthe display device 124(1). As another example, the user may drag a mediafile (e.g., audio file or video file) on the display device 124(2) tothe zone 506, causing an action in which a media playback applicationinitiates playback of the media file on the display device 124(1).

FIG. 6 is a block diagram 600 illustrating displaying a messageindicating an action that will be performed when a portion of an objectenters a zone according to some embodiments. While the various figuresherein illustrate a finger of a hand as interacting with the touchscreen display devices 124(1), 124(2), it should be understood thatanother human appendage, a stylus, or another type of input device maybe used to provide touch input. In addition to touch input, other inputdevices, such as a mouse, a trackball, a trackpad or the like may beused to provide input, such as for example, selecting and dragging anobject.

As illustrated at the top of FIG. 6, the user may select and drag anobject, such as the application 604(N), towards the zone 506. Asillustrated at the middle of FIG. 6, when the object is over (or withina predetermined distance from) the zone 506, the zone 506 may displaythe message 508 indicating the action the zone 506 may perform on theobject. As illustrated at the bottom of FIG. 6, the zone 506 may performan action on the object, such as moving the object from one screen(124(2)) to an adjacent screen (124(1)) of the dual screen computingdevice 102. In some cases, the zone 506 may display the message 508 fora predetermined amount of time and then perform the action on the objectif at least a portion of the object has been placed over the zone 506.In other cases, the zone 506 may display the message 508 that includes aprompt (“perform <action>?”), receive a response (e.g., yes or no) tothe prompt from the user, and then perform the action on the object ifthe user responded “yes” to the prompt and not perform the action if theuser responded “no”.

FIG. 7 is a block diagram 700 illustrating a zone that opens an objectacross two display devices according to some embodiments. The zone 506may be used to maximize an object (e.g., one of the applications 504)across both of the display devices 124(1), 124(2). For example, in thetop half of FIG. 7, when a user drags an object, such as the application504(N), near (e.g., within a predetermined distance from) or partiallyover the zone 506, a message 508 may be displayed indicating the actionto be performed (“open to span both display devices”) by the zone 506.If a user places at least a portion of the object (e.g., application504(N)) over the zone 506, in response, the zone 506 may automaticallyopen (e.g., maximize) the object window across the display devices124(1), 124(2), as illustrated in the bottom half of FIG. 5. Thus, theaction associated with the zone 506 may be to open (e.g., maximize) anobject (e.g., the application 504(N)) to span both the display devices124(1), 124(2) of the computing device 102.

In some cases, the zone 506 may automatically open the object to spanboth display devices 124(1), 124(2) after determining that at least aportion of the object is over the zone 506, e.g., while the user isstill applying pressure to the object. In other cases, the zone 506 mayautomatically open the object to span both display devices 124(1),124(2) after determining that at least a portion of the object is overthe zone 506, and after the user has released the object onto the zone506 (e.g., the user is no longer applying pressure to the object on thetouch screen display device).

The zone 506 may display the message 508 to inform the user of theaction (e.g., “open to span both displays” or “maximize across bothdisplays”) to be performed. After the message 508 has been displayed fora predetermined amount of time (e.g., M milliseconds, where M>0), thezone 506 may determine whether at least a portion of the object is overthe zone 506. Thus, the user may be given a pre-determined amount oftime after the message 508 is displayed to drag the object away from thezone before the action is performed. After the message 508 has beendisplayed for the predetermined amount of time, if at least a portion ofthe object is over the zone 506, the action (e.g., opening the object tospan both display devices) may be performed. After the message 508 hasbeen displayed for the predetermined amount of time, if no portion ofthe object is over the zone 506, then the action is not performed.

The message 508 may include a prompt informing the user of the actionthat will be performed and asking the user to confirm (e.g., “maximizeacross both display devices?—please confirm”). Thus, the user may beasked to confirm whether to perform the action associated with the zone506. If the user confirms, then the action (e.g., opening the object tospan both display devices) may be performed. If the user does notconfirm, then the action may not be performed.

FIG. 8 is a block diagram 800 illustrating a zone that displays amessage indicating an action associated with the zone according to someembodiments. As illustrated at the top of FIG. 8, the user may selectand drag an object, such as the application 604(N), towards the zone506. As illustrated at the middle of FIG. 8, when the object is over (orwithin a predetermined distance from) the zone 506, the zone 506 maydisplay the message 508 indicating the action the zone 506 may performon the object. As illustrated at the bottom of FIG. 8, the zone 506 mayperform an action on the object, such as opening (e.g., maximizing) theobject to span the display devices 124(1), 124(2) of the dual screencomputing device 102. In some cases, the zone 506 may display themessage 508 for a predetermined amount of time and then perform theaction on the object if at least a portion of the object has been placedover the zone 506. In other cases, the zone 506 may display the message508 that includes a prompt (“perform <action>?”), receive a response(e.g., yes or no) to the prompt from the user, and then perform theaction on the object if the user responded “yes” to the prompt and notperform the action if the user responded “no”.

While FIGS. 7 and 8 illustrate the action of maximizing an object acrossa first display device and a second display device, it should beunderstood that other actions may be performed. For example, defaultactions may be specified by the operating system and overridden by aparticular application or by user preferences. To illustrate, a user mayspecify that when an object, such as file, that is being displayed on afirst display device is moved on to the zone 506, the action causes thefile to be launched using the associated application and maximizedacross both display devices 124(1), 124(2). For example, the user maydrag a Word® document displayed on the display device 124(2) on to thezone 506, causing an action in which the Word® application opens thedocument in a window and maximizes the document window the on thedisplay devices 124(1), 124(2). As another example, the user may drag amedia file (e.g., audio file or video file) on the display device 124(2)to the zone 506, causing an action in which a media playback applicationinitiates playback of the media file and the media playback application(e.g., playing back a movie) is maximized across both the displaydevices 124(1), 124(2).

FIG. 9 is a block diagram 900 illustrating a zone to hold objects thatcan be removed and placed on either a first display device or a seconddisplay device according to some embodiments. The zone 506 may include afirst portion 506(1) on the display device 124(1) and a second portion506(2) on the display device 124(2). The zone 506 may be used as aclipboard to temporarily store multiple objects, such as therepresentative object 902. When an object is stored in the zone 506, afirst portion of the object may be displayed in 506(1) on the displaydevice 124(1) and a second portion of the object may be displayed in506(2) on the display device 124(2), enabling the user to remove theobject from the zone 506 and place the object where the user desires. Insome cases, the portions of the object 902 that are displayed in thezones 506(1), 506(2) may be scaled to be smaller to enable the portionsto be displayed with other portions of other objects. The zone 506 mayenable the user to place an object located on one of the display devices124(1), 124(2) and retrieve the object from the other of the displaydevices 124(1), 124(2). When objects, such as the representative object902, are stored in the zone 506, other objects displayed on either thedisplay device 124(1) or the display device 124(2) may continue to beused and manipulated by the user, without affecting the objects that arestored in the zone 506.

As illustrated at the top of FIG. 9, when a user drags an object, suchas the object 902 (e.g., a file, an application, a folder, or the like),near (e.g., within a predetermined distance from) or partially over thezone 506(2), the message 508 may be displayed indicating the action tobe performed (“store in clipboard”) on the object 902. After the message508 has been displayed, if at least a portion of the object 902 is overthe zone 506, in response, as illustrated in the middle of FIG. 9, thezone 506 may place the object 902 in the zone 506, with a first portionof the object 902 displayed in the zone 506(1) and a second portion ofthe object 902 displayed in the zone 506(2). Thus, the action associatedwith the zone 506 may be to store the object 902 and display a portionof the object 902 on each of the display devices 124(1), 124(2) of thecomputing device 102. As illustrated in the bottom of FIG. 9, the usermay select an object, such as the object 902, stored in the zone 506,and drag the object to either of the display devices 124(1), 124(2).Thus, FIG. 9 illustrates the user dragging the object 902 displayed onthe display device 124(2) for storage in the zone 506. The user thenretrieves the object 902 from the zone 506 and drags the object 902 to adesired location on the display device 124(1). In this way, the user cantemporarily store multiple objects that were being displayed on eitherof the display devices 124(1), 124(2) and then re-position the multipleobjects across the display devices 124(1), 124(2).

In some cases, the zone 506 may automatically place the object 902 inthe zone 506 after determining that at least a portion of the object 902is over the zone 506, e.g., while the user is still applying pressure tothe object. In other cases, the zone 506 may automatically place theobject 902 in the zone 506 after determining that at least a portion ofthe object 902 is over the zone 506, and after the user has released theobject 902 onto the zone 506 (e.g., the user is no longer applyingpressure to the object 902 on the touch screen display device 124(2)).

The zone 506 may display the message 508 to inform the user of theaction (e.g., “store in clipboard with access from both displaydevices”) to be performed. After the message 508 has been displayed fora predetermined amount of time (e.g., M milliseconds, where M>0), thezone 506 may determine whether at least a portion of the object 902 isover the zone 506. Thus, the user may be given a pre-determined amountof time after the message 508 is displayed to drag the object 902 awayfrom the zone 506 before the action is performed. After the message 508has been displayed for the predetermined amount of time, if at least aportion of the object 902 is over the zone 506, the action (e.g.,temporarily storing the object 902 in the zone 506) may be performed.After the message 508 has been displayed for the predetermined amount oftime, if no portion of the object 902 is over the zone 506, then theaction may not be performed.

The message 508 may include a prompt informing the user of the actionthat will be performed and asking the user to confirm (e.g., “store inclipboard with access from both display devices?—please confirm”). Thus,the user may be asked to confirm whether to perform the actionassociated with the zone 506. If the user confirms, then the action maybe performed. If the user does not confirm, then the action may not beperformed.

FIG. 10 is a block diagram 1000 illustrating creating multiple zones fora dual-display device according to some embodiments. The operatingsystem, a particular application, or the user's preferences may defineone or more zones, the size and location of each zone, and the actionperformed by each zone. For example, three zones 1002, 1004, and 1006may be defined. Of course, more than three zones or less than threezones may be created depending on the size of the display devices124(1), 124(2). The zones 1002, 1004, 1006 may be defined for thedisplay device 124(1), the display device 124(2), or both the displaydevices 124(1), 124(2). For example, the display device 124(1) mayinclude the zones 1002(1), 1004(1), and 1006(1) and the display device124(2) may include the zones 1002(2), 1004(2), and 1006(2).

Each zone may have an associated message that indicates the action thatthe zone performs. For example, the first zone 1002 may have anassociated message 1008 indicating a first action, such as maximizing anobject across both of the display devices 124(1), 124(2). The secondzone 1004 may have an associated message 1010 indicating a secondaction, such as moving an object from one of the display devices 124(1),124(2) to another of the display devices 124(1), 124(2). The third zone1006 may have an associated message 1012 indicating a third action, suchas moving temporarily storing an object from one of the display devices124(1), 124(2) for subsequent retrieval on another of the displaydevices 124(1), 124(2).

If a first portion of an object is near (or over) one zone and a secondportion of the object is near (or over) another zone, the computingdevice 102 may prompt the user to select whether to perform an actionand if so, which action to perform, e.g., “Please select one: perform<action associated with one zone>, perform <action associated withanother zone>, or perform no action?”

The zones 1002, 1004, 1006 enable a user to cause various pre-programmedactions to be performed merely by dragging and dropping an object to aparticular one of the zones 1002, 1004, or 1006. For example, draggingand dropping an object 1014 on the first zone 1002(1) may cause theobject 1014 to be maximized to span both of the displays 124(1), 124(2).Dragging and dropping the object 1014 on the second zone 1004(1) maycause the object 1014 to be moved to from the display 124(1) to thedisplay 124(2). Dragging and dropping the object 1014 on the third zone1006(1) may cause the object 1014 to be stored and displayed in both thezones 1006(1), 1006(2), thereby enabling the object 1014 to be draggedfrom the zone 1006 to either of the display devices 124(1) or 124(2).Dragging and dropping an object 1016 on the first zone 1002(2) may causethe object 1016 to be maximized to span both of the displays 124(1),124(2). Dragging and dropping the object 1016 on the second zone 1004(2)may cause the object 1016 to be moved to from the display 124(2) to thedisplay 124(1). Dragging and dropping the object 1016 on the third zone1006(2) may cause the object 1016 to be stored and displayed in both thezones 1006(1), 1006(2), thereby enabling the object 1012 to be draggedfrom the zone 1006 to either of the display devices 124(1) or 124(2). Ofcourse, the pre-defined actions described are merely examples of thetypes of actions that may be defined.

In the flow diagrams of FIGS. 11, 12, and 13, each block represents oneor more operations that can be implemented in hardware, software, or acombination thereof. In the context of software, the blocks representcomputer-executable instructions that, when executed by one or moreprocessors, cause the processors to perform the recited operations.Generally, computer-executable instructions include routines, programs,objects, modules, components, data structures, and the like that performparticular functions or implement particular abstract data types. Theorder in which the blocks are described is not intended to be construedas a limitation, and any number of the described operations can becombined in any order and/or in parallel to implement the processes. Fordiscussion purposes, the processes 1100, 1200, and 1300 are describedwith reference to FIG. 1, 2, 3, 4, 5, 6, 7, 8, 9, or 10 as describedabove, although other models, frameworks, systems and environments maybe used to implement these processes.

FIG. 11 is a flowchart of a process 1100 that includes determining thatat least a portion of an object is within a zone according to someembodiments. The process 1100 may be performed by one or more componentsof the computing device 102 of FIG. 1.

At 1102, a zone may be defined on a touch screen display device of adual-display device. At 1104, a determination may be made that an objectis being dragged on the touch screen display device. At 1106, a presenceof at least a portion of the object may be detected within the zone. At1108, a message indicating an action (associated with the zone) may bedisplayed. For example, in FIG. 6, the zone 506 may be defined. Thecomputing device may determine that a user has selected and is draggingan object, such as the application 604(N). When at least a portion ofthe object is over (or within a predetermined distance from) the zone506, the zone 506 may display the message 508 indicating the action thezone 506 performs. In some cases, the zone 506 may display the message508 for a predetermined amount of time and then perform the action onthe object if at least a portion of the object has been placed over thezone 506. In other cases, the zone 506 may display the message 508 thatincludes a prompt (“perform <action>?”), receive a response (e.g., yesor no) to the prompt from the user, and then perform the action on theobject if the user responded “yes” to the prompt and not perform theaction if the user responds “no”.

At 1110, a determination may be made that at least the portion of theobject is (e.g., remains) within the zone. At 1112, the actionassociated with the zone may be performed. In FIG. 6, after determiningthat at least a portion of the object is within the zone 506, the zone506 may perform an action on the object. The action that is performedmay include at least one of moving the object from a current displaydevice to an adjacent display device, maximizing the object on to spantwo display devices, storing the object in a clipboard for subsequentretrieval, playing a media file using a media playback application,another action, or any combination thereof.

FIG. 12 is a flowchart of a process 1200 that includes determiningwhether a portion of an object is within either a first zone or a secondzone according to some embodiments. The process 1200 may be performed byone or more components of the computing device 102 of FIG. 1.

At 1202, a first zone may be defined on a first touch screen displaydevice of a dual-display device. At 1204, a second zone may be definedon the first touch screen display device. For example, in FIG. 10, thefirst zone 1002, the second zone 1004, and the third zone 1006 may bedefined by the operating system, an application, or based on userspecified information.

At 1206, a determination may be made that an object is being dragged onthe touch screen display device. At 1208, a determination may be madewhether at least a portion of the object is within either the first zoneor the second zone. For example, in FIG. 10, the computing device 102may determine that the object 1014 (or the object 1016) is being draggedand determine if at least a portion of the object is within one of thezones 1002, 1004, 1006.

If a determination is made, at 1208, that a portion of the object iswithin the first zone, then the process proceeds to 1210. If adetermination is made, at 1208, that a portion of the object is withinthe second zone, then the process proceeds to 1214. If a determinationis made, at 1208, that no portion of the object is within either thefirst zone or the second zone then no action is taken. At 1210, a firstmessage may be displayed indicating a first action (associated with thefirst zone) to be performed. At 1212, the first action (associated withthe first zone) may be performed if the object is within the first zone.At 1214, a second message may be displayed indicating a second action(associated with the second zone) to be performed. At 1216, the secondaction (associated with the second zone) may be performed if the objectis within the second zone. For example, in FIG. 10, if the computingdevice 102 determines that at least a portion of the object 1014 (or theobject 1016) is within the first zone 1002, then the first message 1008may be displayed. If the computing device 102 determines that at least aportion of the object 1014 (or the object 1016) is within the secondzone 1004, then the second message 1010 may be displayed. If thecomputing device 102 determines that at least a portion of the object1014 (or the object 1016) is within the third zone 1006, then the thirdmessage 1012 may be displayed. If the computing device 102 determinesthat no portion of the object 1014 (or the object 1016) is within any ofthe zones 1002, 1004, and 1006, then no action may be taken. In somecases, the message 1008, 1010, or 1012, may be displayed for apredetermined amount of time and the zone may perform the correspondingaction on the object if at least a portion of the object has been placedover the corresponding zone 1002, 1004, or 1006, respectively. In othercases, the corresponding message 1008, 1010, or 1012 may include aprompt (“perform <action>?”), receive a response (e.g., yes or no) tothe prompt from the user, and then perform the corresponding action onthe object if the user responds “yes” to the prompt and not perform theaction if the user responds “no”. In FIG. 10, after determining that atleast a portion of the object 1014 (or the object 1016) is within eitherthe zone 1002, the zone 1004, or the zone 1006, an action correspondingto the zone may be performed. The action that is performed may includeat least one of moving the object from a current display device to anadjacent display device, maximizing the object on to span two displaydevices, storing the object in a clipboard for subsequent retrieval,playing a media file using a media playback application, another action,or any combination thereof.

FIG. 13 is a flowchart of process that includes displaying a messageindicating an action associated with a zone according to someembodiments. The process 1300 may be performed by one or more componentsof the computing device 102 of FIG. 1.

At 1302, a zone may be defined that spans both a first display deviceand a second display device. At 1304, a determination may be made thatan object is being dragged on the first display device. At 1306, apresence of at least a portion of the object may be detected within(e.g., over) the zone of the first display device. At 1308, a messagemay be displayed indicating an action to be performed if at least theportion of the object remains within the zone. For example, in FIG. 9,the zone 506 may include a first portion 506(1) on the display device124(1) and a second portion 506(2) on the display device 124(2). Thezone 506 may be used as a clipboard to temporarily store multipleobjects, such as the representative object 902. When an object is storedin the zone 506, a first portion of the object may be displayed in506(1) on the display device 124(1) and a second portion of the objectmay be displayed in 506(2) on the display device 124(2), enabling theuser to remove the object from the zone 506 and place the object oneither of the display devices 124(1), 124(2). For example, the zone 506may enable the user to place an object located on one of the displaydevices 124(1), 124(2) and retrieve the object from the other of thedisplay devices 124(1), 124(2). As illustrated at the top of FIG. 9,when a user drags an object, such as the object 902 (e.g., a file, anapplication, a folder, or the like), near (e.g., within a predetermineddistance from) or over the zone 506(2), the message 508 may be displayedindicating the action to be performed (“store in clipboard”) on theobject 902.

At 1310, a determination may be made that at least a portion of theobject is within the zone on the first display. At 1312, the object maybe stored in the zone, with a first portion of the object displayed onthe first display and a second portion of the object displayed on thesecond display. At 1314, a determination may be made that the secondportion of the object being displayed in the zone on the second displaydevice is being dragged. At 1316, the object may be displayed on thesecond display device (e.g., outside the zone). For example, in FIG. 9,after the message 508 has been displayed, if at least a portion of theobject 902 is over the zone 506, the object 902 may be placed in thezone 506, with a first portion of the object 902 displayed in the zone506(1) and a second portion of the object 902 displayed in the zone506(2). As illustrated in the bottom of FIG. 9, the user may select anobject, such as the object 902, stored in the zone 506, and drag theobject to either of the display devices 124(1), 124(2). Thus, FIG. 9illustrates the user dragging the object 902 displayed on the displaydevice 124(2) for storage in the zone 506. The user then retrieves theobject 902 from the zone 506 and drags the object 902 to a desiredlocation on the display device 124(1). In this way, the user cantemporarily store multiple objects that were being displayed on eitherof the display devices 124(1), 124(2) and then re-position the multipleobjects across the display devices 124(1), 124(2).

FIG. 14 is a block diagram illustrating a bezel of a display device thatincludes a capacitive touch area according to some embodiments. In somecases, the bezels 208, 210 of the computing device 102 may include acapacitive touch area. For example, the first bezel 208 may include afirst capacitive touch area 1402 and the second bezel 210 may include asecond capacitive touch area 1404. The capacitive touch areas 1402, 1404may be used for the zones 506(1), 506(2), respectively, as described inFIG. 9 and by the flowchart in FIG. 13 to create a zone in which toaggregate objects (e.g., data and content) to enable the objects to bemoved from one display device to another display device. The areas 1402,1404 may include areas of the display devices 124(1), 124(2) on sides ofthe bezels 208, 210, that are adjacent to the hinge 206 and that expandthe active touch zone. Interactions in the designated touch-bezel areas1402, 1404 may initiate actions and gestures as described herein.

FIG. 15 illustrates an example configuration of the computing device 102of FIG. 1 that can be used to implement the systems and techniquesdescribed herein. The computing device 102 may include one or moreprocessors 1502 (e.g., the CPU 106 and the GPU 104 of FIG. 1), thememory 138, communication interfaces 1506, the display devices 124(1)and 124(2), other input/output (I/O) devices 1510, and one or more massstorage devices 1512, configured to communicate with each other, such asvia one or more system buses 1514 or other suitable connection. While asingle bus is illustrated for ease of understanding, it should beunderstood that the system buses 1514 may include multiple buses, suchas memory device buses, storage device buses, power buses, video signalbuses, and the like.

The processors 1502 are one or more hardware devices that may include asingle processing unit or a number of processing units, all of which mayinclude single or multiple computing units or multiple cores. Theprocessors 1502 may include an integrated GPU or the GPU a separateprocessor device. The processors 1502 may be implemented as one or moremicroprocessors, microcomputers, microcontrollers, digital signalprocessors, central processing units, graphics processing units, statemachines, logic circuitries, and/or any devices that manipulate signalsbased on operational instructions. Among other capabilities, theprocessors 1502 may be configured to fetch and execute computer-readableinstructions stored in the memory 138, mass storage devices 1512, orother computer-readable media.

Memory 138 and mass storage devices 1512 are examples of non-transitorycomputer media (e.g., memory storage devices) for storing instructionsthat can be executed by the processors 1502 to perform the variousfunctions described herein. For example, memory 138 may include bothvolatile memory and non-volatile memory (e.g., RAM, ROM, or the like)devices. Further, mass storage devices 1512 may include hard diskdrives, solid-state drives, removable media, including external andremovable drives, memory cards, flash memory, floppy disks, opticaldisks (e.g., CD, DVD), a storage array, a network attached storage, astorage area network, or the like. Both memory 138 and mass storagedevices 1512 may be collectively referred to as memory or computerstorage media herein, and may be a media capable of storingcomputer-readable, processor-executable program instructions as computerprogram code that can be executed by the processor 1502 as a particularmachine configured for carrying out the operations and functionsdescribed in the implementations herein.

The computing device 102 may also include one or more communicationinterfaces 1506 for exchanging data via a network. The communicationinterfaces 1506 can facilitate communications within a wide variety ofnetworks and protocol types, including wired networks (e.g., Ethernet,DOCSIS, DSL, Fiber, USB etc.) and wireless networks (e.g., WLAN, GSM,CDMA, 802.11, Bluetooth, Wireless USB, cellular, satellite, etc.), theInternet and the like. Communication interfaces 1506 can also providecommunication with external storage (not shown), such as in a storagearray, network attached storage, storage area network, or the like. Thedisplay devices 124(1) and 124(2) may be connected to each other using ahinge (e.g., the hinge 206 of FIG. 2) that enables each display deviceto rotate relative to the other display device. The display devices 124may be used for displaying information and images to users. Other I/Odevices 1510 may be devices that receive various inputs from a user andprovide various outputs to the user, and may include a keyboard, aremote controller, a mouse, a printer, audio input/output devices, andso forth.

The computer storage media, such as memory 138 and mass storage devices1512, may be used to store software and data. For example, the computerstorage media may be used to store the operating system 132, the devicedriver 130, and the data 136(1) to 136(N). The operating system 132 maybe set to a particular display mode 1516. For example, the operatingsystem 132 may have a default display mode and a user may set thedisplay mode 1516 to something different than the default display mode.The computer storage media may store an orientation 1518, one or moresoftware applications 1520, one or more zone definitions 1522,application zones 1524, user preferences 1526, and zone messages 1528.The zone definitions 1522 may be include definitions of zones that maybe created (e.g., by the operating system 132). The zone definitions1522 may specify a length of each zone, a width of each zone, a location(e.g., which display device, where on the display device, etc.) of thezone, the conditions under which (e.g., a proximity of object to a zoneand the like) a message associated with the zone is displayed, and otherzone-related information. The application zones 1524 may include zonedefinitions associated with specific applications. For example, aparticular application, when launched, may create a specific set ofzones to perform a specific set of actions. The user preferences 1526may include user defined zones that may override the default zones ofthe operating system or application specified zones. The zone messages1528 may include various messages displayed when an object is near (orover) a particular zone.

The example systems and computing devices described herein are merelyexamples suitable for some implementations and are not intended tosuggest any limitation as to the scope of use or functionality of theenvironments, architectures and frameworks that can implement theprocesses, components and features described herein. Thus,implementations herein are operational with numerous environments orarchitectures, and may be implemented in general purpose andspecial-purpose computing systems, or other devices having processingcapability. Generally, any of the functions described with reference tothe figures can be implemented using software, hardware (e.g., fixedlogic circuitry) or a combination of these implementations. The term“module,” “mechanism” or “component” as used herein generally representssoftware, hardware, or a combination of software and hardware that canbe configured to implement prescribed functions. For instance, in thecase of a software implementation, the term “module,” “mechanism” or“component” can represent program code (and/or declarative-typeinstructions) that performs specified tasks or operations when executedon a processing device or devices (e.g., CPUs or processors). Theprogram code can be stored in one or more computer-readable memorydevices or other computer storage devices. Thus, the processes,components and modules described herein may be implemented by a computerprogram product.

Furthermore, this disclosure provides various example implementations,as described and as illustrated in the drawings. However, thisdisclosure is not limited to the implementations described andillustrated herein, but can extend to other implementations, as would beknown or as would become known to those skilled in the art. Reference inthe specification to “one implementation,” “this implementation,” “theseimplementations” or “some implementations” means that a particularfeature, structure, or characteristic described is included in at leastone implementation, and the appearances of these phrases in variousplaces in the specification are not necessarily all referring to thesame implementation.

Although the present invention has been described in connection withseveral embodiments, the invention is not intended to be limited to thespecific forms set forth herein. On the contrary, it is intended tocover such alternatives, modifications, and equivalents as can bereasonably included within the scope of the invention as defined by theappended claims.

1. A method comprising: determining, by a computing device comprising afirst display device and a second display device, that the computingdevice has an orientation in which both the first display device and thesecond display device are viewable; defining, by the computing device, azone on the first display device; receiving, by the computing device,selection input selecting an object being displayed on the first displaydevice; receiving, by the computing device, directional input to movethe object on the first display device; determining, by the computingdevice, that at least a portion of the object is within a boundary ofthe zone; displaying the object on the second display device; andstopping displaying the object on the first display device.
 2. Themethod of claim 1, wherein the orientation comprises one of a horizontalorientation or a vertical orientation.
 3. The method of claim 1, furthercomprising: creating a second zone on the first display device;receiving second selection input selecting a second object beingdisplayed on the first display device; receiving second directionalinput to move the second object on the first display device; determiningthat at least a portion of the second object is within the second zone;and causing the second object to be displayed spanning both the firstdisplay device and the second display device without maximizing a sizeof the second object.
 4. The method of claim 1, further comprising:displaying a first portion of a second object within a second zone onthe first display device; displaying a second portion of the secondobject within a third zone on the second display device; receivingsecond selection input selecting the second portion of the second objectwithin the third zone on the second display device; receiving seconddirectional input to move the second object; displaying the secondobject, outside the third zone, on the second display device; andstopping displaying the second object on the first display device. 5.The method of claim 1, further comprising: creating a second zone on thefirst display device; receiving second selection input selecting asecond object being displayed on the first display device; receivingsecond directional input to move the second object on the first displaydevice; determining that at least a portion of the second object iswithin the second zone; and displaying the second object maximized andspanning both the first display device and the second display device. 6.The method of claim 1, further comprising: determining, by the computingdevice, that a location of the object is within a predetermined distancefrom a boundary of the zone; and displaying, by the computing device,for a predetermined period of time, a message indicating an actionassociated with the zone.
 7. The method of claim 1, wherein defining thezone on the first display device comprises: creating the zone to have apre-specified length and a pre-specified width; and positioning the zoneat a pre-specified location on the first display device.
 8. A computingdevice comprising: a first display device; a second display device; oneor more processors; one or more non-transitory computer readable mediastoring instructions executable by the one or more processors to performoperations comprising: determining that the computing device has anorientation in which the first display device and the second displaydevice are both viewable; defining a zone on the first display device;receiving selection input selecting an object being displayed on thefirst display device; receiving directional input to move the object onthe first display device; determining that at least a portion of theobject is within a boundary of the zone; displaying the object on thesecond display device; and stopping displaying the object on the firstdisplay device.
 9. The computing device of claim 8, wherein theorientation comprises one of a horizontal orientation or a verticalorientation.
 10. The computing device of claim 8, the operations furthercomprising: creating a second zone on the first display device;receiving second selection input selecting a second object beingdisplayed on the first display device; receiving second directionalinput to move the second object on the first display device; determiningthat at least a portion of the second object is within the second zone;and causing the second object to be displayed spanning both the firstdisplay device and the second display device without maximizing a sizeof the second object.
 11. The computing device of claim 8, theoperations further comprising: displaying a first portion of a secondobject within a second zone on the first display device; displaying asecond portion of the second object within a third zone on the seconddisplay device; receiving second selection input selecting the secondportion of the second object within the third zone on the second displaydevice; receiving second directional input to move the second object;displaying the second object, outside the third zone, on the seconddisplay device; and stopping displaying the second object on the firstdisplay device.
 12. The computing device of claim 8, the operationsfurther comprising: creating a second zone on the first display device;receiving second selection input selecting a second object beingdisplayed on the first display device; receiving second directionalinput to move the second object on the first display device; determiningthat at least a portion of the second object is within the second zone;and displaying the second object maximized and spanning both the firstdisplay device and the second display device.
 13. The computing deviceof claim 8, wherein defining the first zone on the first display devicecomprises: creating the zone to have a pre-specified length and apre-specified width; and positioning the zone at a pre-specifiedlocation on the first display device.
 14. One or more non-transitorycomputer-readable media storing instructions that are executable by oneor more processors to perform operations comprising: determining that acomputing device comprising a first display device and a second displaydevice has an orientation in which the first display device and thesecond display device of the computing device are both viewable;defining a zone on the first display device; receiving selection inputselecting an object being displayed on the first display device;receiving directional input to move the object on the first displaydevice; determining that at least a portion of the object is within aboundary of the zone; displaying the object on the second displaydevice; and stopping displaying the object on the first display device.15. The one or more non-transitory computer-readable media of claim 14,wherein the orientation comprises one of a horizontal orientation or avertical orientation.
 16. The one or more non-transitorycomputer-readable media of claim 14, the operations further comprising:creating a second zone on the first display device; receiving secondselection input selecting a second object being displayed on the firstdisplay device; receiving second directional input to move the secondobject on the first display device; determining that at least a portionof the second object is within the second zone; and causing the secondobject to be displayed spanning both the first display device and thesecond display device without maximizing a size of the second object.17. The one or more non-transitory computer-readable media of claim 14,the operations further comprising: displaying a first portion of asecond object within a second zone on the first display device; anddisplaying a second portion of the second object within a third zone onthe second display device; receiving second selection input selectingthe second portion of the second object within the third zone on thesecond display device; receiving second directional input to move thesecond object; displaying the second object, outside the third zone, onthe second display device; and stopping displaying the second object onthe first display device.
 18. The one or more non-transitorycomputer-readable media of claim 14, the operations further comprising:creating a second zone on the first display device; receiving secondselection input selecting a second object being displayed on the firstdisplay device; receiving second directional input to move the secondobject on the first display device; determining that at least a portionof the second object is within the second zone; and displaying thesecond object maximized and spanning both the first display device andthe second display device.
 19. The one or more non-transitorycomputer-readable media of claim 14, the operations further comprising:determining that a location of the object is within a predetermineddistance from a boundary of the zone; and displaying for a predeterminedperiod of time, a message indicating an action associated with the zone.20. The one or more non-transitory computer-readable media of claim 14,wherein defining the zone on the first display device comprises:receiving user input comprising a length of the zone, a width of thezone, and a location of the zone; creating the zone to have the lengthand the width; and positioning the zone at the location on the firstdisplay device.